package com.zsy.mapper;

import com.zsy.pojo.Emp;
import com.zsy.pojo.EmpExpr;
import com.zsy.pojo.EmpQueryParam;
import com.zsy.pojo.LoginInfo;
import org.apache.ibatis.annotations.*;

import java.util.List;
import java.util.Map;

@Mapper
public interface EmpMapper {
    //-------------------原始分页查询语句---------------------//
/*    *//**
     * 查询总记录数
     *//*
    public Long getCount();

    *//**
     * 分页查询所有员工信息
     * @return
     *//*
    public List<Emp> getEmpByPage(Integer start, Integer pageSize);*/
//    public List<Emp> list();
    public List<Emp> findList(EmpQueryParam empQueryParam);

    /**
     * 员工新增
     * @param emp
     */
//    @Options(useGeneratedKeys = true,keyProperty = "id") // 添加数据的主键回填到emp对象的id成员变量上
    public void addEmp(Emp emp);

//    public void deleteById(Integer id);

    Emp selectEmpById(Integer id);

    List<Emp> queryEmpList();

    void addExpr(@Param("exprList") List<EmpExpr> exprList);

    List<EmpExpr> selectExprById(Integer id);

    void deleteByIds(List<Integer> ids);

    void updateEmp(Emp emp);
    @MapKey("jobName")
    List<Map<String, Object>> getEmpJobData();
    @MapKey("name")
    List<Map> getEmpGenderData();
    @Select("select * from emp where username=#{username} and password=#{password}")
    LoginInfo login(Emp emp);
}
